package gui;

import java.awt.Polygon;
import logica.Constanten;

/**
 * Deze klasse is afgeleid van Polygon en wordt gebruikt om de orkas de gewenste grafische vorm te geven.
 *
 * @author Bart Bruynooghe
 * @author Benjamin De Clercq
 * @author Thomas Flamant
 * @author Sander Van den Broecke
 */
public class OrkaPolygon extends Polygon {

	private static final OrkaPolygon INSTANCE = new OrkaPolygon();

	private OrkaPolygon() {
		int lengte = 8 * Constanten.SCALE;
		int hoogte = 4 * Constanten.SCALE;
		//neus
		addPoint(lengte * 9 / 10, 0);
		addPoint(lengte * 3 / 5, -hoogte * 3 / 5);
		//links
		addPoint(lengte / 3, -hoogte * 4 / 5);
		addPoint(0, -hoogte * 4 / 5);
		//vin links
		addPoint(-lengte / 4, -hoogte * 6 / 5);
		addPoint(-lengte / 4, -hoogte * 4 / 5);
		addPoint(-lengte / 3, -hoogte * 7 / 10);
		//achter
		addPoint(-lengte, -hoogte / 5);
		//staart links
		addPoint(-lengte * 6 / 5, -hoogte / 2);
		//staart rechts
		addPoint(-lengte * 6 / 5, hoogte / 2);
		//achter
		addPoint(-lengte, hoogte / 5);
		//rechts
		addPoint(-lengte / 3, hoogte * 7 / 10);
		addPoint(-lengte / 4, hoogte * 4 / 5);
		addPoint(-lengte / 4, hoogte * 6 / 5);
		addPoint(0, hoogte * 4 / 5);
		addPoint(lengte / 3, hoogte * 4 / 5);
		addPoint(lengte * 3 / 5, hoogte * 3 / 5);
	}

	/**
	 * Geeft de instantie van de klasse terug
	 * @return	instantie van OrkaPolygon
	 */
	public static OrkaPolygon getInstance() {
		return INSTANCE;
	}
}
